package com.intigas.credigas.repository;

import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
import javax.persistence.Query;

import com.intigas.credigas.model.Usuario;

public class MySQLUsuarioDAO implements EntityDAO<Usuario>{

	EntityManager em;
	
	public MySQLUsuarioDAO(EntityManager em) {
		this.em = em;
	}	
	
	@Override
	public Usuario insert(Usuario t) {
		em.persist(t);
		return t;
	}

	@Override
	public void update(Usuario t) {
		em.merge(t);			
	}

	@Override
	public void delete(Usuario t) {
		em.remove(t);	
	}

	@Override
	public Usuario findById(int id) {
		return em.find(Usuario.class, id);
	}

	@Override
	public Usuario findById(Usuario t) {
		try{
			Query query = em.createNamedQuery("Usuario.findById");
			query.setParameter(1, t.getNomConex());
			Usuario usu =(Usuario) query.getSingleResult();
			return findById(usu.getCodUsu());			
		}catch (NoResultException e) {
			e.printStackTrace();
			return null;
		}
	}

	@Override
	public List<Usuario> listAll() {
		// TODO Auto-generated method stub
		return null;
	}

}
